package service.facade.admin;

import application.MySession;
import dao.cms.UrlAlreadyExistsException;
import domain.cms.AbstractPage;
import domain.cms.CmsHomePage;
import domain.cms.CmsPage;
import exceptions.DeleteException;

import java.io.File;
import java.util.List;


public interface CmsAdminService {
    List<File> getUploadFiles();

    CmsPage createCmsSection() throws Exception;

    CmsPage addChild(CmsPage page) throws Exception;

    CmsHomePage getHomePage();

    void removePage(AbstractPage page) throws DeleteException, Exception;

    List<CmsPage> getSections();

    <T extends AbstractPage> void updateCmsPage(T page) throws UrlAlreadyExistsException, Exception;

    void setMySession(MySession mySession);
}
